【2020年】勉強会をライブ配信する安定構成を紹介します。
せーのでございます。
今日のテーマは「ライブ配信環境」です。
最近、クラメソはYoutubeに力を入れています。
動画コンテンツもブログ同様、良いメディアに育つよう頑張っているところです。
動画コンテンツだけではなく、このご時世に合わせて、勉強会や会社説明会が全てオンライン配信に変わっています。
だいたいzoomを使った配信が多いのですが、UIの良さや訴求力、アーカイブ閲覧などを考慮してYoutube Liveでzoomを配信する構成に注目しています。zoomはUI上参加意識が高く保てるので「登壇者と直接話したい人はzoom、気楽に視聴したい人はYoutube Live」、または「ディスカッションする人たちとそれを見る人達」、のような住み分けが必要になるのでは、と考えています。
そこで現在なんとなくクラメソのYoutube班に(流れで)参加しているせーのから、いくつかの実験配信を経てたどり着いた、現在安定して配信できる構成をご紹介したいと思います。
やること
目的としては「安定して勉強会を配信すること」です。 条件としては
- 勉強会は会議ツールを使って行う
- 視聴者はYoutube Liveからそれに参加する
- 休憩中や開始前、開始後、緊急時に画像を表示できるようにする
- できればVTR、コミュニケーションツールなども使えるよう拡張性を保っておく
という感じです。安定した配信が最優先ですが、勉強会の色々なスタイルに対応できるような運営体制を保っておきたい、と考えています。
構成図
それでは最初に結論とも言える構成図です。
ポイントがいくつかありますのでご紹介します。
会議用と配信用でPCを分ける
最大のポイントです。会議ツールは意外とCPUを食いますので、配信ソフトと会議ツールをいっぺんに動かすと動作が不安定になります。会議と配信を分けることで会議ツールは一映像ソースとして扱うことができ、配信が安定します。 ちなみに優先順位を考えて配信用のPCはネットワークを有線にしています。本当は両方有線だとなお良いかと思います。
拡張性をもたせるためにスイッチャーを使用
この構成ですと会議をしているmacから入ってくる映像をそのまま配信環境のあるWindowsに流しているので、特にスイッチャーである必要はありません。ビデオインターフェースがあれば充分です。
今回はこれに色々とつなぎこむ可能性を考えてスイッチャーにしています。例えばアンケートツールやVTRを流す場合、スイッチャーだとそれぞれ別ソースとして入れることができ、スイッチングすることで自然なコンテンツとして視聴者にお届けできます。また会議ツールがつながらない、などの緊急の場合に緊急用の「しばらくお待ち下さい」という画像や、自分のカメラとマイクなどに急遽切り替える、などのワークアラウンドも実行しやすくなります。
運営連絡用のモニターを用意する
リアルタイムでの進行の打ち合わせや業務連絡など、配信とは別の運営用のコミュニケーションチャンネルというのが必要になります。 ただその連絡ツールを同じ画面に出すと見えてしまいますので、別のディスプレイにHDMI出力します。
これを会議環境に置くか、配信環境に置くか、は悩ましいところです。今回は配信環境をなるべくシンプルに保って負荷を抑えたい、ということで会議環境にもってきました。
それでは構成もわかったところで各環境の設定を見てみましょう。
会議環境
会議環境は単純に会議ツールを一画面まるまるつかって全画面表示させ、残りの画面に運営用のチャットツールなどを表示させておきます。 ここでポイントはATEM Miniに向けたHDMI画面とmacの画面をミラーリングさせておくことです。
ATEM Miniには出力されたHDMI信号が配信ソースとして送られます。つまり、macの場合は出力するモニターごとにHDMIを出力する形になります。
少しややこしいのですが、macから出力した会議ツール表示用のHDMIをATEM MiniのHDMI Thruからのみ表示させてしまうと、ATEM Miniでの別映像、または画像などを出力した時に会議ツールの様子が見えなくなってしまいます。それは運営上都合が悪いので、macの画面とHDMI出力画面の2つをミラーリングしています。
こうすることで会議ツールはmacの画面とHDMI Thruした画面、2つに表示され、ATEM Miniを別映像などに切り替えた時にも会議ツールはmacの画面に表示されている状態になります。
ミラーリングは通常すべての画面をミラーリングするか、全ての画面を独立させるかの2択ですが、Optionボタンを押しながら画面をドラッグすることで任意の画面数だけをミラーリングできます。
配信環境
次に配信環境です。配信環境にはATEM Mini ControlerとOBS、Youtube Liveの管理コンソールが立ち上がっています。
ATEM Mini Controler
ATEM Mini ControlerはATEM Miniの操作を詳細にしてエミュレートしたものです。今回は「メディア プレーヤー」という機能を使って、リアルタイムに切り替える画像やテロップを格納しておきました。
もし配信中に新しく差し込む画像が出てくる可能性がある場合は、運営用のチャットツールはこちらで立ち上げておいたほうがいいかもしれませんね。
OBS
次にOBSです。OBSはATEM Miniからきた映像、音声信号をソースにYoutube Liveのキーストリームを設定して配信します。
会議ツールと実際に配信した映像にはデフォルトで30秒ほどのタイムラグが出てくる(後述)ので、「※配信には30秒ほどのタイムラグがあります」という固定テロップと現在時刻を表示したりしています。コンセンサスがとれている状況であればこの表示はいらないかもしれません。
配信を安定させるために、まずエンコーダをハードウェアGPUにします。これ大事。
次に縮小フィルタを調整します。エンコーディングをGPUにすることでCPU側に余裕ができるので縮小フィルタをランチョスにまでしてもいいかもしれませんが、安全を取ってバイキュービックにしておきます。
ちなみに縮小フィルタ、というのは映像ソースの解像度が大きい場合に配信用の解像度まで下げるときの方法です。
これらの設定でCPU使用率は20%前後まで抑えられます。
Youtube Live 管理コンソール
Youtube側の設定で一番大事なのは遅延設定です。つまり映像ソースとなる勉強会が行われている時間と、それをYoutubeにストリームさせて配信したものが視聴者のPCやスマホに届く時間にはタイムラグが出るので、その設定です。一番遅延の短い超低遅延モード(約5秒)からデフォルト(約30秒)まで3段階から選べます。
配信する側にはエラーなどの特に変わった様子は無くても、やはり遅延設定が短いとYoutube側で突然止まってしまったりするハプニングが起きます。視聴者からの感想や質問は司会や運営が適宜まとめて登壇者に投げる、といった運営上の工夫をした方が良いかと思います。
どうしてもリアルタイムの質問環境を作りたい場合は登壇者と直接ディスカッションをしたい「積極的参加者」とイベントを見ながら雑談したい「消極的参加者」の枠を用意し、積極的参加者に登壇者とは別の部屋のzoomの部屋を用意するとうまく回ります。ここらへんの構成については別のエントリでまた説明したいと思います。
運営環境(WIP)
最後にイベントの運営環境です。オンサイトのイベントでも規模が大きくなって部屋数が増えると連絡にトランシーバーを使ったほうが便利になります。そのノウハウはそのままオンラインのイベントでも活かされます。
モニタリング
配信をしていると、何かトラブルがあった時に気づけ無いことが多いです。視聴者と同じ状態でYoutube Liveを確認する環境を用意しておきましょう。回線を負担しないようにモバイルルータなどでつなげて置くと良いかと思います。
イベントの運営と配信スタッフは分ける
イベントを回す人(司会など)と配信をする人はなるべく分けましょう。これは、それぞれ登壇中に
- 司会: 視聴者の質問事項などをまとめて時間と相談しながら組み立てる
- 配信: 配信状況を確認する。司会と打ち合わせして質問テロップなどをその場で用意する
と準備しておくことがあるからです。また登壇映像が届かない、などの緊急時は
- 司会: 視聴者に状況を説明する。復帰後のタイムスケジュールを確認して登壇者と連絡
- 配信: バックアップシステムへの切り替え判断。視聴者の誘導
という作業がそれぞれあります。これを一人でやるとうまく回らないので、なるべく分けましょう。
チャットツールの使用
司会、配信スタッフ、登壇者が確認できるリアルタイムツールを用意しましょう。現状ではチャットが一番使いやすいかと思います。登壇者はスマホやタブレットにチャットが映るように準備し、カメラの横に置いておくことでカンペ代わりになります。音がなると配信に入ってしまうのでバイブにしておくと良いですね。また、登壇者に指示を送る場合(5分前、やこの後質疑応答します、など)テキストの文字だと登壇中は見落としてしまうことがあるので、スタンプやエモーショナルアイコン、画像など、大きくて見やすい形で送りましょう。登壇中に気が散らないように、運営用の部屋とは別に登壇中に確認するための専用部屋を作るとといいと思います。
まとめ
以上、現状での配信ノウハウをまとめてみました。他にもアイデアがある方はコメントにてお知らせいただけるとありがたいです。